function [vx] = newton(h,k,epsilon)

% inizializzo la direzione di ricerco
% p = -grad(x);
x=[5,5]';
MAX_IT = 500;
it = 0;

threshold = 99999;
vx(it+1,:)=x;
while(threshold > epsilon && it < MAX_IT)
    p = -inv(myh(h,k,x)) * grad(h,k,x);
    alpha = (-grad(h,k,x)' * p) / (p' * (myh(h,k,x)) * p);
    
    % salvo x k meno uno per il calcolo del threshold
    xkminusone = x;
    x = x + alpha * p;
    
    it = it + 1;
    threshold = norm(x - xkminusone);
    vx(it+1,:)=x;
end
%valore_minimo = f(h,k,x)
%minx = x;

end